#include<bits/stdc++.h>
using namespace std;

bool cmp(pair<int,int> a,pair<int,int> b) {
  return a.second > b.second;
}

int main(){
  int m,n,k,l,d;
  cin>>m>>n>>k>>l>>d;
  int hang[1010]={0};
  int lie[1010]={0};
  while(d--){
    int x,y,p,q;
    cin>>x>>y>>p>>q;
    if(y==q){
      int H=min(x,p);
      hang[H]++;
    }
    if(x==p){
      int L=min(y,q);
      lie[L]++;
    }
  }
  vector<pair<int,int> > vh;
  for (int i=0;i<1010;i++) {
    if(hang[i]>0) {
      vh.emplace_back(i,hang[i]);
    }
  }
  sort(vh.begin(),vh.end(),cmp);
  vector<pair<int,int> > vl;
  for (int i=0;i<1010;i++) {
    if(lie[i]>0) {
      vl.emplace_back(i,lie[i]);
    }
  }
  sort(vl.begin(),vl.end(),cmp);
  vector<int> res_h, res_l;
  for (int i = 0; i < min(k, (int)vh.size()); ++i) res_h.push_back(vh[i].first);
  for (int i = 0; i < min(l, (int)vl.size()); ++i) res_l.push_back(vl[i].first);
  sort(res_h.begin(), res_h.end());
  sort(res_l.begin(), res_l.end());

  for(int i=0;i<res_h.size();i++){
    if(i)cout<<" ";
    cout<<res_h[i];
  }
  cout<<endl;
  for(int i=0;i<res_l.size();i++){
    if(i)cout<<" ";
    cout<<res_l[i];
  }
  cout<<endl;

  return 0;
}